package cl.tinet.trainee.tarea6b.model;

import java.io.Serializable;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Id;
import javax.persistence.Table;

/**
 * 
 * @author Jose Ignacio
 */

@Entity
@Table(name = "Salas")
public class Sala implements Serializable {

    /**
     * TODO doc information expected for serialVersionUID attribute.
     */
    private static final long serialVersionUID = 1L;

    /**
     * Atributo nombre, clave primaria de la tabla en BD
     */
    
    @Id
    @Column(name = "nombre")
    private String nombre;


    /**
     * 
     */
    @Column(name = "ubicacion")
    private String ubicacion;


    /**
     * 
     */
    @Column(name = "proyector")
    private Boolean proyector;

    /**
     * 
     */
    @Column(name = "television")
    private Boolean television;

    @Column(name = "capacidad")
    private Integer capacidad;

    /**
     * Allows to get the capacidad attribute value.
     * @return the capacidad value.
     */
    public Integer getCapacidad() {
        return capacidad;
    }

    /**
     * Allows to set the capacidad attribute value.
     *
     * @param capacidad new value for capacidad attribute.
     */
    public void setCapacidad(Integer capacidad) {
        this.capacidad = capacidad;
    }

    /**
     * Allows to get the ubicacion attribute value.
     * 
     * @return the ubicacion value.
     */
    public String getUbicacion() {
        return ubicacion;
    }

    /**
     * Allows to set the ubicacion attribute value.
     * 
     * @param ubicacion
     *            new value for ubicacion attribute.
     */
    public void setUbicacion(String ubicacion) {
        this.ubicacion = ubicacion;
    }

    /**
     * Allows to get the nombre attribute value.
     * 
     * @return the nombre value.
     */
    public String getNombre() {
        return nombre;
    }

    /**
     * Allows to set the nombre attribute value.
     * 
     * @param nombre
     *            new value for nombre attribute.
     */
    public void setNombre(String nombre) {
        this.nombre = nombre;
    }

    /**
     * Allows to get the proyector attribute value.
     * 
     * @return the proyector value.
     */
    public Boolean getProyector() {
        return proyector;
    }

    /**
     * Allows to set the proyector attribute value.
     * 
     * @param proyector
     *            new value for proyector attribute.
     */
    public void setProyector(Boolean proyector) {
        this.proyector = proyector;
    }

    /**
     * Allows to get the television attribute value.
     * 
     * @return the television value.
     */
    public Boolean getTelevision() {
        return television;
    }

    /**
     * Allows to set the television attribute value.
     * 
     * @param television
     *            new value for television attribute.
     */
    public void setTelevision(Boolean television) {
        this.television = television;
    }
    
//    public int getCapacidad() {
//        return capacidad;
//    }
//
//    public void setCapacidad(int i) {
//        // TODO Auto-generated method stub
//        this.capacidad = i;
//        
//    }    
    
    
    /**
     * {@inheritDoc}
     */
    public boolean equals(Object o) {
        if (o == null) {
            return false;
        } else if (!(o instanceof Sala)) {
            return false;
        } else if (this.getNombre().equals(((Sala) o).getNombre())) {
            return true;
        }
        return false;
    }



}
